iT邦幫忙

2022 iThome 鐵人賽

DAY 3
1
自我挑戰組

System Software Introduction系列 第 3

Types of System Software​

  • 分享至 

  • xImage
  •  

System software是眾多software的集合,泛指讓hardware能夠運行軟體的基本software


System Software Architecture

https://ithelp.ithome.com.tw/upload/images/20221004/201522984Wm38mzGuP.jpg

Firmware

  • Firmware是管理hardware的software
  • 負責在hardware上電後運作起來管理hardware
  • 例如: BIOS就是一種firmware,一上電就會進行把kernel load進RAM的流程

Device Driver

  • Device driver是服務kernel的software
  • 負責將控制hardware的功能包裝成API給kernel使用、會直接對hardware提出服務請求
  • 例如: kernel想要用網路上傳資料到某個IP,網路卡的device driver就要負責把檔案封包送給網路卡並要求網路卡送出。

Kernel

  • Kernel是服務system library和shell的software
  • 負責提供system call API給system library或shell使用、會直接對device driver提出服務請求
  • 例如: 很多system libraries都向kernel發出想用CPU的需求,kernel會分配時間給CPU資源需求者

System Library

  • System Library是服務application software/system utilities的software組成之函式庫 (C library)
  • 負責提供控制kernel的API給application software/system utilities、會直接對kernel提出服務請求
  • 例如: glibc可以協助我們自己寫的程式向kernel提出讀取檔案的要求

Shell

  • Shell是服務user的software
  • 負責提供使用介面(UI)給user、會直接對kernel提出服務請求
  • 例如: Linux bash rm、Windows的圖形化介面按刪除,可以命令kernel刪除檔案

System Utilities

  • System utilities泛指幫助user進行開發、執行、除錯的software
  • 負責提供build source code/debug的功能給user、會直接對kernel提出服務請求
  • 例如: GNU toolchain有提供GCC compiler和GDB debugger

我們今天簡單認識了system software的成員,接下來的章節,我們將會詳細介紹每一個system software。


上一篇
Features of System Software
下一篇
System Software - Firmware
系列文
System Software Introduction30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言